package asteroids.model.programs.statements;


import exception.StopActionClassException;
import asteroids.model.programs.Program;
import be.kuleuven.cs.som.annotate.Basic;

public abstract class Statement {
	
	public Statement(){
	}
	
	public abstract void execute(Program program) throws StopActionClassException;
	public abstract void reset();
	
	public void setExecuted(){
		this.isExecuted=true;
	}
	
	public void setUnexecuted(){
		this.isExecuted=false;
	}
	
	@Basic
	public boolean isExecuted(){
		return this.isExecuted;
		
	}
	
	private boolean isExecuted=false;

}
